//++++++++++++++++++++++++++++++++++++
// QuantV 3.0.0 shader
// Original code by Rockstar Games
//++++++++++++++++++++++++++++++++++++
vs_4_0
dcl_constantbuffer cb4[765], dynamicIndexed
dcl_constantbuffer cb1[16], immediateIndexed
dcl_constantbuffer cb0[1], immediateIndexed
dcl_constantbuffer cb2[14], immediateIndexed
dcl_constantbuffer cb3[50], immediateIndexed
dcl_constantbuffer cb12[1], immediateIndexed
dcl_constantbuffer cb10[11], dynamicIndexed
dcl_input v0.xyz
dcl_input v1.xyzw
dcl_input v2.xy
dcl_input v3.xy
dcl_input v4.xyz
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyz
dcl_output o4.xyz
dcl_output o5.xyzw
dcl_output o6.xyzw
dcl_output o7.xyzw
dcl_output o8.xyzw
dcl_output o9.xyzw
dcl_output o10.xyzw
dcl_output o11.xyz
dcl_output_siv o12.xyzw, position
dcl_output_siv o13.xyzw, clip_distance
dcl_temps 13
mul r0.xy, v1.wzww, l(2.550000e+002, 2.550000e+002, 0.000000e+000, 0.000000e+000)
round_ne r0.xy, r0.xyxx
ftou r0.xy, r0.xyxx
imul null, r0.x, r0.x, l(3)
dp3 r0.z, cb4[r0.x + 0].xyzx, cb4[r0.x + 0].xyzx
sqrt r0.z, r0.z
lt r0.w, l(0.000000e+000), r0.z
if_nz r0.w
  div r1.xyz, cb4[r0.x + 0].xyzx, r0.zzzz
  div r2.xyz, cb4[r0.x + 1].xyzx, r0.zzzz
  div r3.xyz, cb4[r0.x + 2].xyzx, r0.zzzz
else
  mov r1.xyz, cb4[r0.x + 0].xyzx
  mov r2.xyz, cb4[r0.x + 1].xyzx
  mov r3.xyz, cb4[r0.x + 2].xyzx
endif
mov r1.w, cb4[r0.x + 0].w
mov r4.xyz, v0.xyzx
mov r4.w, l(1.000000)
dp4 r0.w, r1.xyzw, r4.xyzw
mov r2.w, cb4[r0.x + 1].w
dp4 r1.w, r2.xyzw, r4.xyzw
mov r3.w, cb4[r0.x + 2].w
dp4 r0.x, r3.xyzw, r4.xyzw
ne r2.w, l(0.000000e+000, 0.000000e+000, 0.000000e+000, 0.000000e+000), v1.y
dp3 r1.x, r1.xyzx, v4.xyzx
dp3 r1.y, r2.xyzx, v4.xyzx
dp3 r1.z, r3.xyzx, v4.xyzx
movc r1.xyz, r2.wwww, r1.xyzx, v4.xyzx
mad r2.x, v1.x, r0.z, -r0.z
mad r0.z, v1.y, r2.x, r0.z
mul r2.xyz, r1.wwww, cb1[1].xyzx
mad r2.xyz, r0.wwww, cb1[0].xyzx, r2.xyzx
mad r2.xyz, r0.xxxx, cb1[2].xyzx, r2.xyzx
add r2.xyz, r2.xyzx, cb1[3].xyzx
mul r3.xyzw, r1.wwww, cb1[9].xyzw
mad r3.xyzw, r0.wwww, cb1[8].xyzw, r3.xyzw
mad r3.xyzw, r0.xxxx, cb1[10].xyzw, r3.xyzw
add r3.xyzw, r3.xyzw, cb1[11].xyzw
add r4.xyz, -r2.xyzx, cb1[15].xyzx
mul r5.xyz, r1.yyyy, cb1[1].xyzx
mad r1.xyw, r1.xxxx, cb1[0].xyxz, r5.xyxz
mad r1.xyz, r1.zzzz, cb1[2].xyzx, r1.xywx
dp3 r0.x, r1.xyzx, r1.xyzx
rsq r0.x, r0.x
mul r1.xyz, r0.xxxx, r1.xyzx
dp3 r0.x, r1.xyzx, r4.xyzx
lt r0.w, l(0.000000e+000), r0.x
lt r0.x, r0.x, l(0.000000e+000)
iadd r0.x, r0.x, -r0.w
itof r0.x, r0.x
mul r1.xyz, r0.xxxx, r1.xyzx
add_sat r0.x, cb2[13].z, cb3[49].w
dp3 r0.w, r1.xyzx, r1.xyzx
rsq r0.w, r0.w
mul r5.xyz, r0.wwww, r1.xyzx
mul r0.x, r0.x, cb2[12].y
dp3 r1.w, r4.xyzx, r4.xyzx
rsq r1.w, r1.w
mul r6.xyz, r1.wwww, r4.xyzx
mad r7.xyz, r4.xyzx, r1.wwww, -cb3[0].xyzx
dp3 r2.w, r7.xyzx, r7.xyzx
rsq r2.w, r2.w
mul r7.xyz, r2.wwww, r7.xyzx
mov_sat r2.w, cb12[0].z
mul r4.w, cb2[12].z, cb2[12].z
mul r0.x, r0.x, r0.x
add r5.w, cb12[0].y, l(-5.000000e+002)
max r5.w, r5.w, l(0.000000e+000)
add r6.w, -r5.w, cb12[0].y
mul r5.w, r5.w, l(5.580000e+002)
mad r5.w, r6.w, l(3.000000e+000), r5.w
dp3 r6.w, r5.xyzx, -cb3[0].xyzx
mov_sat r7.w, r6.w
add r7.w, -|r6.w|, r7.w
mad r6.w, r0.z, r7.w, |r6.w|
dp3_sat r8.x, r6.xyzx, r5.xyzx
dp3_sat r8.y, r7.xyzx, -cb3[0].xyzx
add r8.xy, -r8.xyxx, l(1.000000e+000, 1.000000e+000, 0.000000e+000, 0.000000e+000)
mul r8.zw, r8.xxxy, r8.xxxy
mul r8.zw, r8.zzzw, r8.zzzw
mul r8.xy, r8.xyxx, r8.zwzz
add r7.w, -cb12[0].x, l(1.000000e+000)
mad r8.xy, cb12[0].xxxx, r8.xyxx, r7.wwww
add r8.zw, r5.wwww, l(0.000000e+000, 0.000000e+000, 2.000000e+000, 1.000000e-008)
mul r8.z, r8.z, l(1.250000e-001)
max r9.x, r0.z, r8.x
add r8.x, r8.x, l(-1.000000e+000)
mad r8.x, r9.x, r8.x, l(1.000000e+000)
mad r8.x, -r2.w, r8.x, l(1.000000e+000)
dp3 r7.x, r5.xyzx, r7.xyzx
add_sat r7.x, r7.x, l(1.000000e-008)
log r7.x, r7.x
mul r7.x, r7.x, r8.w
exp r7.x, r7.x
mul r7.x, r8.y, r7.x
mul r7.x, r8.z, r7.x
mul r7.x, r2.w, r7.x
mul r7.x, r6.w, r7.x
mul r6.w, r6.w, r8.x
mul o5.xyz, r6.wwww, cb3[1].xyzx
mul o6.xyz, r7.xxxx, cb3[1].xyzx
ige r6.w, l(0), cb3[2].x
if_z r6.w
  eq r7.x, cb3[19].w, l(0.000000e+000)
  add r9.yzw, -r2.xxyz, cb3[3].xxyz
  add r10.xyz, r2.xyzx, -cb3[3].xyzx
  dp3 r7.y, r10.xyzx, cb3[11].xyzx
  add r7.z, cb3[19].w, l(1.000000e-004)
  div_sat r7.y, r7.y, r7.z
  mul r7.y, r7.y, cb3[19].w
  mad r10.xyz, cb3[11].xyzx, r7.yyyy, cb3[3].xyzx
  add r10.xyz, -r2.xyzx, r10.xyzx
  movc r7.xyz, r7.xxxx, r9.yzwy, r10.xyzx
  dp3 r8.y, r7.xyzx, r7.xyzx
  add r7.xyz, r7.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r9.y, r7.xyzx, r7.xyzx
  rsq r9.y, r9.y
  mul r7.xyz, r7.xyzx, r9.yyyy
  mad_sat r8.y, -r8.y, cb3[3].w, l(1.000000e+000)
  add r9.y, -cb3[11].w, l(1.000000e+000)
  mad r9.y, r9.y, r8.y, cb3[11].w
  div r8.y, r8.y, r9.y
  dp3 r9.y, r7.xyzx, -cb3[11].xyzx
  mad_sat r9.y, r9.y, cb3[27].x, cb3[35].x
  dp3 r9.z, r7.xyzx, r5.xyzx
  mov_sat r9.w, r9.z
  add r9.w, -|r9.z|, r9.w
  mad r9.z, r0.z, r9.w, |r9.z|
  mul r9.y, r9.y, r9.z
  mul r9.z, r8.y, r9.y
  lt r10.x, cb3[19].y, cb3[19].x
  mul r10.y, cb3[19].y, l(2.865200e+000)
  lt r10.y, cb3[19].x, r10.y
  and r10.x, r10.y, r10.x
  mul r10.y, cb3[19].z, l(2.959100e+000)
  lt r10.y, r10.y, cb3[19].y
  and r10.x, r10.y, r10.x
  movc r10.xyz, r10.xxxx, cb3[19].yyyy, cb3[19].xyzx
  mul r10.xyz, r9.zzzz, r10.xyzx
  mad r7.xyz, r4.xyzx, r1.wwww, r7.xyzx
  dp3 r9.z, r7.xyzx, r7.xyzx
  rsq r9.z, r9.z
  mul r7.xyz, r7.xyzx, r9.zzzz
  dp3_sat r9.z, r7.xyzx, r6.xyzx
  add r9.z, -r9.z, l(1.000000e+000)
  mul r9.w, r9.z, r9.z
  mul r9.w, r9.w, r9.w
  mul r9.z, r9.w, r9.z
  mad r9.z, cb12[0].x, r9.z, r7.w
  dp3_sat r7.x, r7.xyzx, r5.xyzx
  log r7.x, r7.x
  mul r7.x, r7.x, r8.w
  exp r7.x, r7.x
  mul r7.x, r7.x, r9.z
  mul r7.x, r9.y, r7.x
  mul r7.x, r8.y, r7.x
  mul r7.x, r8.z, r7.x
  lt r11.x, cb3[19].y, cb3[19].x
  mul r11.y, cb3[19].y, l(2.865200e+000)
  lt r11.y, cb3[19].x, r11.y
  and r11.x, r11.y, r11.x
  mul r11.y, cb3[19].z, l(2.959100e+000)
  lt r11.y, r11.y, cb3[19].y
  and r11.x, r11.y, r11.x
  movc r11.xyz, r11.xxxx, cb3[19].yyyy, cb3[19].xyzx
  mul r7.xyz, r7.xxxx, r11.xyzx
else
  mov r10.xyz, l(0,0,0,0)
  mov r7.xyz, l(0,0,0,0)
endif
ilt r8.y, l(0), cb3[2].x
if_nz r8.y
  ige r9.y, l(1), cb3[2].x
  or r9.z, r6.w, r8.y
  movc r9.y, r9.y, r9.z, r6.w
  if_z r9.y
    eq r9.z, cb3[20].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[4].xyzx
    add r12.xyz, r2.xyzx, -cb3[4].xyzx
    dp3 r9.w, r12.xyzx, cb3[12].xyzx
    add r10.w, cb3[20].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[20].w
    mad r12.xyz, cb3[12].xyzx, r9.wwww, cb3[4].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[4].w, l(1.000000e+000)
    add r9.w, -cb3[12].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[12].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[12].xyzx
    mad_sat r9.w, r9.w, cb3[28].x, cb3[36].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[20].y, cb3[20].x
    mul r12.y, cb3[20].y, l(2.865200e+000)
    lt r12.y, cb3[20].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[20].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[20].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[20].yyyy, cb3[20].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[20].y, cb3[20].x
    mul r12.y, cb3[20].y, l(2.865200e+000)
    lt r12.y, cb3[20].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[20].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[20].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[20].yyyy, cb3[20].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(2), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.z, cb3[21].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[5].xyzx
    add r12.xyz, r2.xyzx, -cb3[5].xyzx
    dp3 r9.w, r12.xyzx, cb3[13].xyzx
    add r10.w, cb3[21].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[21].w
    mad r12.xyz, cb3[13].xyzx, r9.wwww, cb3[5].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[5].w, l(1.000000e+000)
    add r9.w, -cb3[13].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[13].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[13].xyzx
    mad_sat r9.w, r9.w, cb3[29].x, cb3[37].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[21].y, cb3[21].x
    mul r12.y, cb3[21].y, l(2.865200e+000)
    lt r12.y, cb3[21].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[21].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[21].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[21].yyyy, cb3[21].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[21].y, cb3[21].x
    mul r12.y, cb3[21].y, l(2.865200e+000)
    lt r12.y, cb3[21].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[21].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[21].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[21].yyyy, cb3[21].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(3), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.z, cb3[22].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[6].xyzx
    add r12.xyz, r2.xyzx, -cb3[6].xyzx
    dp3 r9.w, r12.xyzx, cb3[14].xyzx
    add r10.w, cb3[22].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[22].w
    mad r12.xyz, cb3[14].xyzx, r9.wwww, cb3[6].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[6].w, l(1.000000e+000)
    add r9.w, -cb3[14].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[14].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[14].xyzx
    mad_sat r9.w, r9.w, cb3[30].x, cb3[38].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[22].y, cb3[22].x
    mul r12.y, cb3[22].y, l(2.865200e+000)
    lt r12.y, cb3[22].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[22].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[22].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[22].yyyy, cb3[22].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[22].y, cb3[22].x
    mul r12.y, cb3[22].y, l(2.865200e+000)
    lt r12.y, cb3[22].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[22].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[22].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[22].yyyy, cb3[22].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(4), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.z, cb3[23].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[7].xyzx
    add r12.xyz, r2.xyzx, -cb3[7].xyzx
    dp3 r9.w, r12.xyzx, cb3[15].xyzx
    add r10.w, cb3[23].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[23].w
    mad r12.xyz, cb3[15].xyzx, r9.wwww, cb3[7].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[7].w, l(1.000000e+000)
    add r9.w, -cb3[15].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[15].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[15].xyzx
    mad_sat r9.w, r9.w, cb3[31].x, cb3[39].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[23].y, cb3[23].x
    mul r12.y, cb3[23].y, l(2.865200e+000)
    lt r12.y, cb3[23].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[23].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[23].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[23].yyyy, cb3[23].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[23].y, cb3[23].x
    mul r12.y, cb3[23].y, l(2.865200e+000)
    lt r12.y, cb3[23].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[23].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[23].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[23].yyyy, cb3[23].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(5), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.z, cb3[24].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[8].xyzx
    add r12.xyz, r2.xyzx, -cb3[8].xyzx
    dp3 r9.w, r12.xyzx, cb3[16].xyzx
    add r10.w, cb3[24].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[24].w
    mad r12.xyz, cb3[16].xyzx, r9.wwww, cb3[8].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[8].w, l(1.000000e+000)
    add r9.w, -cb3[16].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[16].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[16].xyzx
    mad_sat r9.w, r9.w, cb3[32].x, cb3[40].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[24].y, cb3[24].x
    mul r12.y, cb3[24].y, l(2.865200e+000)
    lt r12.y, cb3[24].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[24].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[24].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[24].yyyy, cb3[24].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[24].y, cb3[24].x
    mul r12.y, cb3[24].y, l(2.865200e+000)
    lt r12.y, cb3[24].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[24].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[24].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[24].yyyy, cb3[24].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(6), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.z, cb3[25].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[9].xyzx
    add r12.xyz, r2.xyzx, -cb3[9].xyzx
    dp3 r9.w, r12.xyzx, cb3[17].xyzx
    add r10.w, cb3[25].w, l(1.000000e-004)
    div_sat r9.w, r9.w, r10.w
    mul r9.w, r9.w, cb3[25].w
    mad r12.xyz, cb3[17].xyzx, r9.wwww, cb3[9].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r9.zzzz, r11.xyzx, r12.xyzx
    dp3 r9.z, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    mad_sat r9.z, -r9.z, cb3[9].w, l(1.000000e+000)
    add r9.w, -cb3[17].w, l(1.000000e+000)
    mad r9.w, r9.w, r9.z, cb3[17].w
    div r9.z, r9.z, r9.w
    dp3 r9.w, r11.xyzx, -cb3[17].xyzx
    mad_sat r9.w, r9.w, cb3[33].x, cb3[41].x
    dp3 r10.w, r11.xyzx, r5.xyzx
    mov_sat r11.w, r10.w
    add r11.w, -|r10.w|, r11.w
    mad r10.w, r0.z, r11.w, |r10.w|
    mul r9.w, r9.w, r10.w
    mul r10.w, r9.z, r9.w
    lt r12.x, cb3[25].y, cb3[25].x
    mul r12.y, cb3[25].y, l(2.865200e+000)
    lt r12.y, cb3[25].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[25].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[25].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[25].yyyy, cb3[25].xyzx
    mad r10.xyz, r10.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r10.w, r11.xyzx, r11.xyzx
    rsq r10.w, r10.w
    mul r11.xyz, r10.wwww, r11.xyzx
    dp3_sat r10.w, r11.xyzx, r6.xyzx
    add r10.w, -r10.w, l(1.000000e+000)
    mul r11.w, r10.w, r10.w
    mul r11.w, r11.w, r11.w
    mul r10.w, r10.w, r11.w
    mad r10.w, cb12[0].x, r10.w, r7.w
    dp3_sat r11.x, r11.xyzx, r5.xyzx
    log r11.x, r11.x
    mul r11.x, r8.w, r11.x
    exp r11.x, r11.x
    mul r10.w, r10.w, r11.x
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r9.z, r8.z, r9.z
    lt r12.x, cb3[25].y, cb3[25].x
    mul r12.y, cb3[25].y, l(2.865200e+000)
    lt r12.y, cb3[25].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[25].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[25].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[25].yyyy, cb3[25].xyzx
    mad r7.xyz, r9.zzzz, r12.xyzx, r7.xyzx
  endif
else
  mov r9.y, l(-1)
endif
if_z r9.y
  ige r9.z, l(7), cb3[2].x
  or r9.y, r9.y, r9.z
  if_z r9.y
    eq r9.y, cb3[26].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[10].xyzx
    add r12.xyz, r2.xyzx, -cb3[10].xyzx
    dp3 r9.z, r12.xyzx, cb3[18].xyzx
    add r9.w, cb3[26].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[26].w
    mad r12.xyz, cb3[18].xyzx, r9.zzzz, cb3[10].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r9.yzw, r9.yyyy, r11.xxyz, r12.xxyz
    dp3 r10.w, r9.yzwy, r9.yzwy
    add r9.yzw, r9.yyzw, l(0.000000e+000, 1.000000e-006, 1.000000e-006, 1.000000e-006)
    dp3 r11.x, r9.yzwy, r9.yzwy
    rsq r11.x, r11.x
    mul r9.yzw, r9.yyzw, r11.xxxx
    mad_sat r10.w, -r10.w, cb3[10].w, l(1.000000e+000)
    add r11.x, -cb3[18].w, l(1.000000e+000)
    mad r11.x, r11.x, r10.w, cb3[18].w
    div r10.w, r10.w, r11.x
    dp3 r11.x, r9.yzwy, -cb3[18].xyzx
    mad_sat r11.x, r11.x, cb3[34].x, cb3[42].x
    dp3 r11.y, r9.yzwy, r5.xyzx
    mov_sat r11.z, r11.y
    add r11.z, -|r11.y|, r11.z
    mad r11.y, r0.z, r11.z, |r11.y|
    mul r11.x, r11.x, r11.y
    mul r11.y, r10.w, r11.x
    lt r12.x, cb3[26].y, cb3[26].x
    mul r12.y, cb3[26].y, l(2.865200e+000)
    lt r12.y, cb3[26].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[26].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[26].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[26].yyyy, cb3[26].xyzx
    mad r10.xyz, r11.yyyy, r12.xyzx, r10.xyzx
    mad r9.yzw, r4.xxyz, r1.wwww, r9.yyzw
    dp3 r11.y, r9.yzwy, r9.yzwy
    rsq r11.y, r11.y
    mul r9.yzw, r9.yyzw, r11.yyyy
    dp3_sat r11.y, r9.yzwy, r6.xyzx
    add r11.y, -r11.y, l(1.000000e+000)
    mul r11.z, r11.y, r11.y
    mul r11.z, r11.z, r11.z
    mul r11.y, r11.z, r11.y
    mad r11.y, cb12[0].x, r11.y, r7.w
    dp3_sat r9.y, r9.yzwy, r5.xyzx
    log r9.y, r9.y
    mul r9.y, r8.w, r9.y
    exp r9.y, r9.y
    mul r9.y, r9.y, r11.y
    mul r9.y, r11.x, r9.y
    mul r9.y, r10.w, r9.y
    mul r9.y, r8.z, r9.y
    lt r12.x, cb3[26].y, cb3[26].x
    mul r12.y, cb3[26].y, l(2.865200e+000)
    lt r12.y, cb3[26].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[26].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[26].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[26].yyyy, cb3[26].xyzx
    mad r7.xyz, r9.yyyy, r12.xyzx, r7.xyzx
  endif
endif
mul r9.y, r8.x, r8.x
mul r2.w, r2.w, r2.w
add o5.w, -r8.x, l(1.000000e+000)
mul o7.xyz, r10.xyzx, r9.yyyy
mul o8.xyz, r7.xyzx, r2.wwww
if_z r6.w
  eq r7.x, cb3[19].w, l(0.000000e+000)
  add r10.xyz, -r2.xyzx, cb3[3].xyzx
  add r11.xyz, r2.xyzx, -cb3[3].xyzx
  dp3 r7.y, r11.xyzx, cb3[11].xyzx
  add r7.z, cb3[19].w, l(1.000000e-004)
  div_sat r7.y, r7.y, r7.z
  mul r7.y, r7.y, cb3[19].w
  mad r11.xyz, cb3[11].xyzx, r7.yyyy, cb3[3].xyzx
  add r11.xyz, -r2.xyzx, r11.xyzx
  movc r7.xyz, r7.xxxx, r10.xyzx, r11.xyzx
  dp3 r9.z, r7.xyzx, r7.xyzx
  add r7.xyz, r7.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r9.w, r7.xyzx, r7.xyzx
  rsq r9.w, r9.w
  mul r7.xyz, r7.xyzx, r9.wwww
  mad_sat r9.z, -r9.z, cb3[3].w, l(1.000000e+000)
  add r9.w, -cb3[11].w, l(1.000000e+000)
  mad r9.w, r9.w, r9.z, cb3[11].w
  div r9.z, r9.z, r9.w
  dp3 r9.w, r7.xyzx, -cb3[11].xyzx
  mad_sat r9.w, r9.w, cb3[27].x, cb3[35].x
  dp3 r10.x, r7.xyzx, -r5.xyzx
  mov_sat r10.y, r10.x
  add r10.y, -|r10.x|, r10.y
  mad r10.x, r0.z, r10.y, |r10.x|
  mul r9.w, r9.w, r10.x
  mul r10.x, r9.z, r9.w
  lt r12.x, cb3[19].y, cb3[19].x
  mul r12.y, cb3[19].y, l(2.865200e+000)
  lt r12.y, cb3[19].x, r12.y
  and r12.x, r12.y, r12.x
  mul r12.y, cb3[19].z, l(2.959100e+000)
  lt r12.y, r12.y, cb3[19].y
  and r12.x, r12.y, r12.x
  movc r12.xyz, r12.xxxx, cb3[19].yyyy, cb3[19].xyzx
  mul r10.xyz, r10.xxxx, r12.xyzx
  mad r7.xyz, r4.xyzx, r1.wwww, r7.xyzx
  dp3 r10.w, r7.xyzx, r7.xyzx
  rsq r10.w, r10.w
  mul r7.xyz, r7.xyzx, r10.wwww
  dp3_sat r10.w, r7.xyzx, r6.xyzx
  add r10.w, -r10.w, l(1.000000e+000)
  mul r11.x, r10.w, r10.w
  mul r11.x, r11.x, r11.x
  mul r10.w, r10.w, r11.x
  mad r10.w, cb12[0].x, r10.w, r7.w
  dp3_sat r7.x, r7.xyzx, -r5.xyzx
  log r7.x, r7.x
  mul r7.x, r7.x, r8.w
  exp r7.x, r7.x
  mul r7.x, r7.x, r10.w
  mul r7.x, r9.w, r7.x
  mul r7.x, r9.z, r7.x
  mul r7.x, r8.z, r7.x
  lt r12.x, cb3[19].y, cb3[19].x
  mul r12.y, cb3[19].y, l(2.865200e+000)
  lt r12.y, cb3[19].x, r12.y
  and r12.x, r12.y, r12.x
  mul r12.y, cb3[19].z, l(2.959100e+000)
  lt r12.y, r12.y, cb3[19].y
  and r12.x, r12.y, r12.x
  movc r12.xyz, r12.xxxx, cb3[19].yyyy, cb3[19].xyzx
  mul r7.xyz, r7.xxxx, r12.xyzx
else
  mov r10.xyz, l(0,0,0,0)
  mov r7.xyz, l(0,0,0,0)
endif
if_nz r8.y
  ige r9.z, l(1), cb3[2].x
  or r8.y, r6.w, r8.y
  movc r6.w, r9.z, r8.y, r6.w
  if_z r6.w
    eq r8.y, cb3[20].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[4].xyzx
    add r12.xyz, r2.xyzx, -cb3[4].xyzx
    dp3 r9.z, r12.xyzx, cb3[12].xyzx
    add r9.w, cb3[20].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[20].w
    mad r12.xyz, cb3[12].xyzx, r9.zzzz, cb3[4].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[4].w, l(1.000000e+000)
    add r9.z, -cb3[12].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[12].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[12].xyzx
    mad_sat r9.z, r9.z, cb3[28].x, cb3[36].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[20].y, cb3[20].x
    mul r12.y, cb3[20].y, l(2.865200e+000)
    lt r12.y, cb3[20].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[20].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[20].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[20].yyyy, cb3[20].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[20].y, cb3[20].x
    mul r12.y, cb3[20].y, l(2.865200e+000)
    lt r12.y, cb3[20].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[20].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[20].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[20].yyyy, cb3[20].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(2), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r8.y, cb3[21].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[5].xyzx
    add r12.xyz, r2.xyzx, -cb3[5].xyzx
    dp3 r9.z, r12.xyzx, cb3[13].xyzx
    add r9.w, cb3[21].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[21].w
    mad r12.xyz, cb3[13].xyzx, r9.zzzz, cb3[5].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[5].w, l(1.000000e+000)
    add r9.z, -cb3[13].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[13].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[13].xyzx
    mad_sat r9.z, r9.z, cb3[29].x, cb3[37].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[21].y, cb3[21].x
    mul r12.y, cb3[21].y, l(2.865200e+000)
    lt r12.y, cb3[21].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[21].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[21].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[21].yyyy, cb3[21].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[21].y, cb3[21].x
    mul r12.y, cb3[21].y, l(2.865200e+000)
    lt r12.y, cb3[21].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[21].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[21].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[21].yyyy, cb3[21].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(3), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r8.y, cb3[22].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[6].xyzx
    add r12.xyz, r2.xyzx, -cb3[6].xyzx
    dp3 r9.z, r12.xyzx, cb3[14].xyzx
    add r9.w, cb3[22].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[22].w
    mad r12.xyz, cb3[14].xyzx, r9.zzzz, cb3[6].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[6].w, l(1.000000e+000)
    add r9.z, -cb3[14].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[14].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[14].xyzx
    mad_sat r9.z, r9.z, cb3[30].x, cb3[38].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[22].y, cb3[22].x
    mul r12.y, cb3[22].y, l(2.865200e+000)
    lt r12.y, cb3[22].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[22].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[22].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[22].yyyy, cb3[22].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[22].y, cb3[22].x
    mul r12.y, cb3[22].y, l(2.865200e+000)
    lt r12.y, cb3[22].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[22].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[22].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[22].yyyy, cb3[22].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(4), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r8.y, cb3[23].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[7].xyzx
    add r12.xyz, r2.xyzx, -cb3[7].xyzx
    dp3 r9.z, r12.xyzx, cb3[15].xyzx
    add r9.w, cb3[23].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[23].w
    mad r12.xyz, cb3[15].xyzx, r9.zzzz, cb3[7].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[7].w, l(1.000000e+000)
    add r9.z, -cb3[15].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[15].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[15].xyzx
    mad_sat r9.z, r9.z, cb3[31].x, cb3[39].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[23].y, cb3[23].x
    mul r12.y, cb3[23].y, l(2.865200e+000)
    lt r12.y, cb3[23].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[23].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[23].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[23].yyyy, cb3[23].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[23].y, cb3[23].x
    mul r12.y, cb3[23].y, l(2.865200e+000)
    lt r12.y, cb3[23].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[23].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[23].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[23].yyyy, cb3[23].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(5), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r8.y, cb3[24].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[8].xyzx
    add r12.xyz, r2.xyzx, -cb3[8].xyzx
    dp3 r9.z, r12.xyzx, cb3[16].xyzx
    add r9.w, cb3[24].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[24].w
    mad r12.xyz, cb3[16].xyzx, r9.zzzz, cb3[8].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[8].w, l(1.000000e+000)
    add r9.z, -cb3[16].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[16].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[16].xyzx
    mad_sat r9.z, r9.z, cb3[32].x, cb3[40].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[24].y, cb3[24].x
    mul r12.y, cb3[24].y, l(2.865200e+000)
    lt r12.y, cb3[24].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[24].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[24].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[24].yyyy, cb3[24].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[24].y, cb3[24].x
    mul r12.y, cb3[24].y, l(2.865200e+000)
    lt r12.y, cb3[24].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[24].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[24].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[24].yyyy, cb3[24].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(6), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r8.y, cb3[25].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[9].xyzx
    add r12.xyz, r2.xyzx, -cb3[9].xyzx
    dp3 r9.z, r12.xyzx, cb3[17].xyzx
    add r9.w, cb3[25].w, l(1.000000e-004)
    div_sat r9.z, r9.z, r9.w
    mul r9.z, r9.z, cb3[25].w
    mad r12.xyz, cb3[17].xyzx, r9.zzzz, cb3[9].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r8.yyyy, r11.xyzx, r12.xyzx
    dp3 r8.y, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r9.z, r11.xyzx, r11.xyzx
    rsq r9.z, r9.z
    mul r11.xyz, r9.zzzz, r11.xyzx
    mad_sat r8.y, -r8.y, cb3[9].w, l(1.000000e+000)
    add r9.z, -cb3[17].w, l(1.000000e+000)
    mad r9.z, r9.z, r8.y, cb3[17].w
    div r8.y, r8.y, r9.z
    dp3 r9.z, r11.xyzx, -cb3[17].xyzx
    mad_sat r9.z, r9.z, cb3[33].x, cb3[41].x
    dp3 r9.w, r11.xyzx, -r5.xyzx
    mov_sat r10.w, r9.w
    add r10.w, -|r9.w|, r10.w
    mad r9.w, r0.z, r10.w, |r9.w|
    mul r9.z, r9.z, r9.w
    mul r9.w, r8.y, r9.z
    lt r12.x, cb3[25].y, cb3[25].x
    mul r12.y, cb3[25].y, l(2.865200e+000)
    lt r12.y, cb3[25].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[25].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[25].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[25].yyyy, cb3[25].xyzx
    mad r10.xyz, r9.wwww, r12.xyzx, r10.xyzx
    mad r11.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r9.w, r11.xyzx, r11.xyzx
    rsq r9.w, r9.w
    mul r11.xyz, r9.wwww, r11.xyzx
    dp3_sat r9.w, r11.xyzx, r6.xyzx
    add r9.w, -r9.w, l(1.000000e+000)
    mul r10.w, r9.w, r9.w
    mul r10.w, r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mad r9.w, cb12[0].x, r9.w, r7.w
    dp3_sat r10.w, r11.xyzx, -r5.xyzx
    log r10.w, r10.w
    mul r10.w, r8.w, r10.w
    exp r10.w, r10.w
    mul r9.w, r9.w, r10.w
    mul r9.z, r9.z, r9.w
    mul r8.y, r8.y, r9.z
    mul r8.y, r8.z, r8.y
    lt r12.x, cb3[25].y, cb3[25].x
    mul r12.y, cb3[25].y, l(2.865200e+000)
    lt r12.y, cb3[25].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[25].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[25].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[25].yyyy, cb3[25].xyzx
    mad r7.xyz, r8.yyyy, r12.xyzx, r7.xyzx
  endif
else
  mov r6.w, l(-1)
endif
if_z r6.w
  ige r8.y, l(7), cb3[2].x
  or r6.w, r6.w, r8.y
  if_z r6.w
    eq r6.w, cb3[26].w, l(0.000000e+000)
    add r11.xyz, -r2.xyzx, cb3[10].xyzx
    add r12.xyz, r2.xyzx, -cb3[10].xyzx
    dp3 r8.y, r12.xyzx, cb3[18].xyzx
    add r9.z, cb3[26].w, l(1.000000e-004)
    div_sat r8.y, r8.y, r9.z
    mul r8.y, r8.y, cb3[26].w
    mad r12.xyz, cb3[18].xyzx, r8.yyyy, cb3[10].xyzx
    add r12.xyz, -r2.xyzx, r12.xyzx
    movc r11.xyz, r6.wwww, r11.xyzx, r12.xyzx
    dp3 r6.w, r11.xyzx, r11.xyzx
    add r11.xyz, r11.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r8.y, r11.xyzx, r11.xyzx
    rsq r8.y, r8.y
    mul r11.xyz, r8.yyyy, r11.xyzx
    mad_sat r6.w, -r6.w, cb3[10].w, l(1.000000e+000)
    add r8.y, -cb3[18].w, l(1.000000e+000)
    mad r8.y, r8.y, r6.w, cb3[18].w
    div r6.w, r6.w, r8.y
    dp3 r8.y, r11.xyzx, -cb3[18].xyzx
    mad_sat r8.y, r8.y, cb3[34].x, cb3[42].x
    dp3 r9.z, r11.xyzx, -r5.xyzx
    mov_sat r9.w, r9.z
    add r9.w, -|r9.z|, r9.w
    mad r9.z, r0.z, r9.w, |r9.z|
    mul r8.y, r8.y, r9.z
    mul r9.z, r6.w, r8.y
    lt r12.x, cb3[26].y, cb3[26].x
    mul r12.y, cb3[26].y, l(2.865200e+000)
    lt r12.y, cb3[26].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[26].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[26].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[26].yyyy, cb3[26].xyzx
    mad r10.xyz, r9.zzzz, r12.xyzx, r10.xyzx
    mad r4.xyz, r4.xyzx, r1.wwww, r11.xyzx
    dp3 r1.w, r4.xyzx, r4.xyzx
    rsq r1.w, r1.w
    mul r4.xyz, r1.wwww, r4.xyzx
    dp3_sat r1.w, r4.xyzx, r6.xyzx
    add r1.w, -r1.w, l(1.000000e+000)
    mul r6.x, r1.w, r1.w
    mul r6.x, r6.x, r6.x
    mul r1.w, r1.w, r6.x
    mad r1.w, cb12[0].x, r1.w, r7.w
    dp3_sat r4.x, r4.xyzx, -r5.xyzx
    log r4.x, r4.x
    mul r4.x, r4.x, r8.w
    exp r4.x, r4.x
    mul r1.w, r1.w, r4.x
    mul r1.w, r8.y, r1.w
    mul r1.w, r6.w, r1.w
    mul r1.w, r8.z, r1.w
    lt r12.x, cb3[26].y, cb3[26].x
    mul r12.y, cb3[26].y, l(2.865200e+000)
    lt r12.y, cb3[26].x, r12.y
    and r12.x, r12.y, r12.x
    mul r12.y, cb3[26].z, l(2.959100e+000)
    lt r12.y, r12.y, cb3[26].y
    and r12.x, r12.y, r12.x
    movc r12.xyz, r12.xxxx, cb3[26].yyyy, cb3[26].xyzx
    mad r7.xyz, r1.wwww, r12.xyzx, r7.xyzx
  endif
endif
mul o9.xyz, r9.yyyy, r10.xyzx
mul o10.xyz, r2.wwww, r7.xyzx
mad r0.w, r1.z, r0.w, cb3[43].w
mul r0.w, r0.w, cb3[44].w
max r0.w, r0.w, l(0.000000e+000)
mad r4.xyz, cb3[47].xyzx, r0.wwww, cb3[48].xyzx
add r1.w, -cb2[13].z, l(1.000000e+000)
mad r6.xyz, cb3[45].xyzx, r0.wwww, cb3[46].xyzx
mul r6.xyz, r6.xyzx, cb2[13].zzzz
mad r4.xyz, r4.xyzx, r1.wwww, r6.xyzx
mul r4.xyz, r0.xxxx, r4.xyzx
mad r6.xyz, cb3[43].xyzx, r0.wwww, cb3[44].xyzx
mov r7.x, cb3[46].w
mov r7.y, cb3[47].w
mov r7.z, cb3[48].w
dp3_sat r0.w, r7.xyzx, r5.xyzx
mad r5.xyz, cb3[49].xyzx, r0.wwww, r6.xyzx
mad r4.xyz, r5.xyzx, r4.wwww, r4.xyzx
mul o11.xyz, r8.xxxx, r4.xyzx
dp4 o13.x, r3.xyzw, cb0[0].xyzw
mov o0.xyzw, cb10[6].xyzw
mov o1.xyzw, cb10[r0.y + 7].xyzw
mov o2.xy, v2.xyxx
mov o2.zw, v3.xxxy
mov o6.w, r5.w
mov o7.w, r4.w
mov o8.w, r0.x
mov o9.w, r0.z
mov o10.w, r9.x
mov o12.xyzw, r3.xyzw
mov o13.yzw, l(0,0,0,0)
mov o3.xyz, r2.xyzx
mov o4.xyz, r1.xyzx
ret